#ifndef RAY_H_
#define RAY_H_

#include "Vec3.h"

class Renderable;
class ContactData;

class Ray
{
public:
    Vec3 m_dir;
    Vec3 m_origin;
    mutable float m_depth;
    Renderable* m_hitObject;
public:
    Ray() : m_hitObject(0),m_depth(-1.0f) {}
    Ray(const Vec3& o, const Vec3& d) : 
      m_dir(d), m_origin(o), m_hitObject(0),m_depth(-1.0f) {}

};

#endif